<?php
/**
 * Permite generar la tasa de estacionamiento de acuerdo a los vehículos registrados
 * @package simertweb 
 * @subpackage controllers  
 * @category Administración
 * @author Grecia Espinoza <mrcl2587@gmail.com>
 * @author Juan Maldonado  <jgmaldonadoj@gmail.com> 
 * @version 1.0 
 */
class Tasa_estacionamiento extends CI_Controller {

    function __construct() {
        parent::__construct();
        $this->load->model('mregistros');
        $this->load->model('acceso');
        $this->load->model('reportes');
    }

    /**
     * Muestra la tasa de estacionamiento diaria actual
     */
    function index() {
        if ($this->acceso->sesion() == 1) {
            date_default_timezone_set('America/Guayaquil');
            $hoy = date('Y-m-d');
            $data ['datos'] = $this->mregistros->registroDiario($hoy);
            $this->load->view('includes/menu_izquierdo');
            $this->load->view('includes/cabecera');
            $this->load->view('tasa_estacionamiento', $data);
            $this->load->view('includes/footer');
        } else {
            $this->load->view('autenticacion');
        }
    }

    /**
     * Permite generar la tasa de estacionamiento de acuerdo a las fechas ingresadas
     */
    function calcular() {
        $this->form_validation->set_rules('fecFin', 'Fecha Fin', 'required');
        $this->form_validation->set_rules('fecInicio', 'Fecha Inicio', 'required');
        if ($this->form_validation->run() === TRUE) {
            $fechaInicio = $_POST['fecInicio'];
            $fechaFin = $_POST['fecFin'];
            if (empty($fechaInicio) or empty($fechaFin)) {
                $data ['datos'] = $this->mregistros->registroDiario($fechaInicio);
                $this->load->view('includes/menu_izquierdo');
                $this->load->view('includes/cabecera');
                $this->load->view('tasa_estacionamiento', $data);
                $this->load->view('includes/footer');
            } elseif ($fechaInicio == $fechaFin) {
                $data ['datos'] = $this->mregistros->registroDiario($fechaInicio);
                $this->load->view('includes/menu_izquierdo');
                $this->load->view('includes/cabecera');
                $this->load->view('tasa_estacionamiento', $data);
                $this->load->view('includes/footer');
            } elseif ($fechaInicio < $fechaFin) {
                    $data ['datos'] = $this->mregistros->registroFecha($fechaInicio, $fechaFin);
                    $this->load->view('includes/menu_izquierdo');
                    $this->load->view('includes/cabecera');
                    $this->load->view('tasa_estacionamiento', $data);
                    $this->load->view('includes/footer');
                } else {
                    $data ['datos'] = "Fechas incorrectas";
                    $this->load->view('includes/menu_izquierdo');
                    $this->load->view('includes/cabecera');
                    $this->load->view('tasa_estacionamiento', $data);
                    $this->load->view('includes/footer');
                }
            
        } else {
           $this->index();
        }
    }

    /**
     * Permite generar un documento .pdf de la tasa de estacionamiento
     */
    function generar_estacionamiento() {
        $fechaInicio = $_POST['fechai'];
        $fechaFin = $_POST['fechaf'];

        $this->form_validation->set_rules('fechaf', 'Fecha Fin', 'required');
        $this->form_validation->set_rules('fechai', 'Fecha Inicio', 'required');
        if ($this->form_validation->run() == TRUE) {
            $cabecera = array(
                'ZONA',
                'DESCRIPCIÓN',
                'N° AZULES',
                'N° AMARILLOS',
                'HORAS OPERACION',
                'VEHÍCULOS REGISTRADOS',
                '(0-30) MIN',
                '(31-60) MIN',
                '(61-90) MIN',
                '(91-120) MIN',
                '(121-150) MIN',
                '(151-180) MIN',
            );
            if ($fechaInicio == $fechaFin) {
                $query = $this->mregistros->registroDiario($fechaInicio);
                $titulo = '<h1><B>TASAS DE ESTACIONAMIENTO DIARIA</B></h1><br>';
            } else {
                $query = $this->mregistros->registroFecha($fechaInicio, $fechaFin);
                $titulo = '<h1><B>TASAS DE ESTACIONAMIENTO</B></h1><br>';
            }
            $contenido = array();
            for ($i = 0; $i < count($query); $i++) {
                $data = array(
                    $query[$i]['zona'],
                    $query[$i]['subcalle'],
                    $query[$i]['azules'],
                    $query[$i]['amarillos'],
                    $query[$i]['operacion'],
                    $query[$i]['vehiculos'],
                    $query[$i]['min30'],
                    $query[$i]['min60'],
                    $query[$i]['min90'],
                    $query[$i]['min120'],
                    $query[$i]['min150'],
                    $query[$i]['min180'],
                );
                array_push($contenido, $data);
               }
                $this->reportes->pdf($cabecera, $contenido, $titulo, 'FECHA DE REPORTE: ' . $query[0]['fecha'] . '<BR>');
            
        } else {
            $this->index();
        }
    }

}

?>
